import Vue from 'vue'
import Vuex from 'vuex'
import app from './modules/app'
import dict from './modules/dict'
import user from './modules/user'
import tagsView from './modules/tagsView'
import permission from './modules/permission'
import settings from './modules/settings'
import getters from './getters'

Vue.use(Vuex)
/**Vuex中有5个内容需要学习：

state： 统一定义公共数据（类似于data(){return {a:1, b:2，xxxxxx}}）
mutations ： 使用它来修改数据(类似于methods)
getters： 类似于computed(计算属性，对现有的状态进行计算得到新的数据-------派生 )
actions： 发起异步请求
modules： 模块拆分
其中最为重要的内容是state和mutations
*/
const store = new Vuex.Store({
  modules: {
    app,
    dict,
    user,
    tagsView,
    permission,
    settings
  },
  getters
})

export default store
